#ifdef __cplusplus
extern "C" {
#endif

#ifdef Graphics

#include "gl/gl.h"
#include "gl/device.h"
#include "forms.h"

/**** Callback routines ****/

extern void doodleCallBack(short dev, short val);

/**** Forms and Objects ****/

extern long doodle;
extern long org[];
extern short xpos, ypos;

/**** Creation Routine ****/

extern void create_free_forms();

#define Black	0
#define Red		1
#define Yellow	2
#define Green	3
#define Cyan	4
#define Blue	5
#define Magenta	6
#define White	7
#define DkGreen	8
#define MedGreen	9
#define DkBlue	10

#define VorEdge			Red
#define BottleneckCol	DkBlue
#define SpokeCol		Green
#define PolyCol			Yellow
#define VorVertexCol	Red
#define EraseCol		Black
#define SweeplineCol	White
#define SweepfrontCol	White
#define BinSearchCol	Blue
#define BinSearch2Col	Cyan
#define BinSearchFinCol	MedGreen
#define CircleEventCol	Cyan
#define PolyHighlight	Magenta
#define SweepSpokeCol	DkGreen

#if 0
#define VorEdge			1
#define BottleneckCol	2
#define SpokeCol		3
#define PolyCol			4
#define VorVertexCol	5
#define EraseCol		6
#define SweeplineCol	7
#define BinSearchCol	8
#define BinSearch2Col	9
#define PolyHighlight	10
#endif

#else

#define VorEdge			1
#define BottleneckCol	2
#define SpokeCol		3
#define PolyCol			4
#define VorVertexCol	5
#define EraseCol		6
#define SweeplineCol	7
#define BinSearchCol	8
#define BinSearch2Col	9
#define PolyHighlight	10

#endif

void clearScreen (void);
void drawline(int colour, float x1, float y1, float x2, float y2);
void drawpoint(int colour, float x, float y);
void drawcircle(int colour, float x, float y, float radius);

#ifdef __cplusplus
}
#endif
